package controller;

import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.net.Socket;
import java.util.Vector;

import model.Schadensbericht;
import query.SchadenberichtEinSuchenQuery;
import query.SchadensberichtSuchenQuery;

public class ControllerSchadensbericht implements Serializable{
	private static final long serialVersionUID = 2661011647794721161L;
	
	public static Vector<Schadensbericht> getData(){
		try{
			//Socket erstellen
			Socket socket = new Socket("20.49.184.100", 5550);
			
			//Outputstream erstellen
			ObjectOutputStream clientOutputStream = new ObjectOutputStream(
					socket.getOutputStream());
			
			//Inputstream erstellen
			ObjectInputStream clientInputStream = new ObjectInputStream(
					socket.getInputStream());
			
			//Controller KundeSuchenQuery erstellen
			SchadensberichtSuchenQuery sb = new SchadensberichtSuchenQuery();
			
			//Controller Objekt an Server senden
			clientOutputStream.writeObject(sb);
	
			//Antwort von Server erhalten
			Object inputObj = clientInputStream.readObject();
			Vector<Schadensbericht> vector = (Vector<Schadensbericht>) inputObj;
			return vector;
		} catch (Exception e){
			
		}
		
		return null;
	}
	
	
	static public Schadensbericht getData(int id){
		try{
			//Socket erstellen
			Socket socket = new Socket("20.49.184.100", 5550);
			
			//Outputstream erstellen
			ObjectOutputStream clientOutputStream = new ObjectOutputStream(
					socket.getOutputStream());
			
			//Inputstream erstellen
			ObjectInputStream clientInputStream = new ObjectInputStream(
					socket.getInputStream());
			
			//Controller KundeSuchenQuery erstellen
			SchadenberichtEinSuchenQuery ks = new SchadenberichtEinSuchenQuery();
			ks.setId(id);
			
			//Controller Objekt an Server senden
			clientOutputStream.writeObject(ks);
	
			//Antwort von Server erhalten
			Object inputObj = clientInputStream.readObject();
			Schadensbericht schadensbericht = (Schadensbericht) inputObj;
			return schadensbericht;
		} catch (Exception e){
			
		}
		
		return null;
		
		
		
	}
}
